package top.lv666.graduation_design_serve.service;

import top.lv666.graduation_design_serve.pojo.Attention;
import top.lv666.graduation_design_serve.pojo.Blog;

import java.util.Map;
import java.util.List;

public interface BlogService {
    /**
     * 我关注的用户发布的博客
     */
    List<Blog> SelectMyFouceBlog(Map<String, Object> map);

    /**
     * @apiNote 我点赞的博客
     */
    List<Blog> SelectMyLikeBlog(Map<String, Object> map);

    /**
     * @apiNote 删除博客
     */
    void DeleteBlog(Map<String, Object> map);

    /**
     * @apiNote 查询当前用户下的博文
     */
    List<Blog> SelectBlogByUser(Map<String, Object> map);

    /**
     * @apiNote 查询当前用户下的博文
     */
    List<Blog> SelectBlogByUserId(Map<String, Object> map);

    /**
     * @apiNote 发布文章
     */
    void CreateBolg(Map<String, Object> map);

    /**
     * @apiNote 修改信息
     */
    void UpdateBlog(Map<String, Object> map);

    /**
     * @apiNote 获取最火的当前博客
     */
    List<Blog> SelectBlogHot(Map<String, Object> map);

    /**
     * @apiNote 获取最新的博客
     */
    List<Blog> SelectBlogNow(Map<String, Object> map);

    /**
     * @apiNote 博客点赞
     */
    void LikeBlog(Map<String, Object> map);

    /**
     * @apiNote 取消点赞
     */
    void cancelLikeBlog(Map<String, Object> map);

    /**
     * 查询单个博客的详细信息
     */
    Blog selectBlogInfo(String blogId);

    /**
     * @apiNote 转发博文
     */
    void createRefBlog(Map<String, Object> map);

    /**
     * @apiNote 删除转发博文
     */
    void DeleteRefBlog(Map<String, Object> map);


}
